异或变换

题目 异或变换

image-ce0dae33

思路分析

image-bf6fc27a

应该是有规律可言的 异或有个性质 同样的数异或两次等于没做 所以很可能与n与t的奇偶性有关系 但是暂时找清楚到底是怎么个规律

先用暴力写一遍 把能拿的分拿到

一个细节 防止一轮中左边的改变了影响右边的效果 我们从右边开始做改变

#include<bits/stdc++.h>

using namespace std;

#define endl '\n'

int n,t;

int main()

{

	ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);

	cin>>n>>t;

	string s;cin>>s;

	while(t--){

		for(int i=s.size();i>0;i--){

			if(i>0){

				s[i]=(s[i]-'0')^(s[i-1]-'0')+'0';

			}

		}

	}

	cout<<s;

	return 0;

}

就这 能过6个…… 那还找个鸡毛规律啊

代码实现


同类题型

视频讲解


⬅️ 123 🏠 00-冲刺国赛 ➡️ 二进制问题